﻿Imports Commander_Wars.Spieletools
''' <summary>
''' Wird zu erstellen des KO's Adder verwendet copyright Nintendo und Intelligent System
''' </summary>
''' <remarks></remarks>
Public Class KOAdder
    Inherits ObjektKO
    Public Sub New(ByVal Spieler As Integer)
        MyBase.New(Spieler, KIGabeEinsatzstellen.RundenAnfang)
        StartwerteLaden()
    End Sub
    Public Sub New(ByVal Spieler As Integer, ByVal Gabefuellstand As Integer, ByVal Gabenart As Gabemodi, ByVal neuSternkosten As Integer)
        MyBase.New(Spieler, Gabefuellstand, Gabenart, neuSternkosten, KIGabeEinsatzstellen.RundenAnfang)
        StartwerteLaden()
    End Sub

    Private Sub StartwerteLaden()
        KOID = "ADDER"
        Armee = Armeen.BH.ToString
        Musik = "Adder"
        Bild = GetBildID()
        Select Case DataSettings.CommanderWarsGameModus
            Case CommanderWarsGameModi.AdvanceWars
                Sternkosten = 900
                Gabekosten = 0
                SpezialgabeKosten = 4
                Gaben = Objektverwalter.GetKO(Bild).KOBeschreibung.Gaben
                Gaben(1) = Gaben(0)
            Case CommanderWarsGameModi.AdvanceWars2
                Sternkosten = 900
                Gabekosten = 3
                SpezialgabeKosten = 2
                Gaben = Objektverwalter.GetKO(Bild).KOBeschreibung.Gaben
            Case CommanderWarsGameModi.AdvanceWarsDS
                Sternkosten = 900
                Gabekosten = 3
                SpezialgabeKosten = 2
                Gaben = Objektverwalter.GetKO(Bild).KOBeschreibung.Gaben
            Case CommanderWarsGameModi.AdvanceWarsDC
                Sternkosten = 1000
                Gabekosten = 0
                SpezialgabeKosten = 6
                Gaben = Objektverwalter.GetKO(Bild).KOBeschreibung.Gaben
            Case Else
                Sternkosten = 900
                Gabekosten = 3
                SpezialgabeKosten = 2
                Gaben = Objektverwalter.GetKO(Bild).KOBeschreibung.Gaben
        End Select
        KORange = 3
        KOname = Objektverwalter.GetKO(Bild).KOBeschreibung.Name
        KOLaden()
    End Sub

    Public Overrides Sub KOLaden()
        Gabenfueller = 1.2
        Bewegungsbonus = Nothing
        If DataSettings.CommanderWarsGameModus = CommanderWarsGameModi.AdvanceWarsDC Then
            'Dafuer sinkt die Feuerkraft aber drastisch
            WetterReichweitenbonus(0) = 0
        End If
    End Sub

    Public Overrides Sub Gabeeinsetzen(Optional ByVal OhneFunktion As Boolean = False)
        Bewegungsbonus = New BewegungsboniTabelleAlles_1
        If OhneFunktion = False Then
            AnimationEigene("KANBEIGABE", 2)
        End If
        GabeEingesetzt()
    End Sub

    Public Overrides Sub SpezialGabeeinsetzen(Optional ByVal OhneFunktion As Boolean = False)
        If DataSettings.CommanderWarsGameModus = CommanderWarsGameModi.AdvanceWars Then
            Bewegungsbonus = New BewegungsboniTabelleAlles_1
            If OhneFunktion = False Then
                AnimationEigene("KANBEIGABE", 2)
            End If
            GabeEingesetzt()
        Else
            Bewegungsbonus = New BewegungsboniTabelleAlles_2
            If OhneFunktion = False Then
                AnimationEigene("SPEZIALGABE", 2)
            End If
            GabeEingesetzt()
        End If
    End Sub

    Public Overrides Sub KOFrame()
        'Wir machen nichts
    End Sub


End Class

Public Class KOBeschreibungAdder
    Inherits ObjektKOBeschreibung
    Public Sub New()
        Name = "Adder"
        Fein = "Sein Gesicht"
        Nein = "Schmutzige Dinge"
        Beschreibung = New String() {"Egozentrischer KO", "von Black Hole haelt sich fuer ein", "strategie Genie mit einmaligen", "Faehigkeiten."}
        Stil = New String() {"Seine Gabeleiste fuellt sich", "schneller auf als die anderer KO."}
        Gabebeschreibung = New String() {"Alle Einheiten erhalten 1 Bewegungspunkt."}
        SpezialgabeBeschreibung = New String() {"Alle Einheiten erhalten 2 Bewegungspunkte."}
        GabeKosten = 2
        Spezialgabekosten = 3
        Gaben = New String() {"Seitenhieb", "Ausfallschritt"}
        Synergie = New Decimal() {0.5#, 2, 0.5#, 0.5#, -1.5#, -2, 0.5#, -1.5, -1}
        KONamen = New String() {"HELMUT", "ZAK", "KAT", "MAVERIK", "GRAVES", "SOPHIE", "PETER", "GRAVES", "ERIC"}
        Doppelgabenamen = New String() {"Doppel-Gabe", "Gruseliges Grauen", "Doppel-Gabe", "Doppel-Gabe", "Doppel-Gabe", "Doppel-Gabe", "Doppel-Gabe", "Doppel-Gabe", "Doppel-Gabe"}
        Gabesaetze = New String() {"Hae! Hae! Hae! ... Kniet nieder vor dem grossen Adder!" _
                                    , "Hae! Hae! Hae!... Es tut nur einen Moment weh!" _
                                    , "Dieses planke Entsetzen in eurem Gesicht!... Sehr erfrischend." _
                                    , "Hae! Hae! Hae!... Ich werde es geniessen euch zu vernichten." _
                                    , "Hae! Hae! Hae!... Kann man hier keinen Spass haben?" _
                                    , "Ich verspreche es wird kurz und aeusserst qualvoll!"}
        Siegsaetze = New String() {"Hae! Hae! Hae!... Was hast du erwartet?" _
                                , "Oh mein Gott! Haette ich es dir einfacher machen sollen?" _
                                , "Vergiss mich nicht! Das waere eine Schande."}
        Tauschsaetze = New String() {"Hae! Hae! Hae!... Das wird gut..." _
                                    , "Mein Gift fliesst durch deine Adern."}
        Doppelgabesaetze = New DoppelGabesatz() {New DoppelGabesatz("ADDER", "ZAK", "Hae! Hae! Hae!... perfekt.", "Das wird fies.") _
                                              , New DoppelGabesatz("ZAK", "ADDER", "Mein fieser Plan wird funktionierm", "Hae! Hae! Hae!... Dann ist es gleich vorbei.")}
        Niederlagesaetze = New String() {"Hssss! Heute war... ungluecklich. Ein schlechter Tag. Nicht mehr.", _
                                     "Es ist dieses verflixte Wetter! Das war das Problem! Hssss!"}
    End Sub
End Class
